<?php
namespace Amis\dataviewer;

use Amis\Basics\AmisBasics;

class Link extends AmisBasics
{
    /**
     * 如果在 Table、Card 和 List 中，为"link"；在 Form 中用作静态展示，为"static-link"
     */
    public string $type        = 'link';
    public string $type_static = 'static-link';

    /**
     * 标签内文本
     * @param string $body
     * @return $this|\Amis\dataviewer\Link
     */
    public function body(string $body)
    {
        $this->body = $body;
        return $this;
    }

    /**
     * 链接地址
     * @param string $href
     * @return $this
     */
    public function href(string $href)
    {
        $this->href = $href;
        return $this;
    }

    /**
     * 是否在新标签页打开
     * @param string $blank
     * @return $this
     */
    public function blank(string $blank)
    {
        $this->blank = $blank;
        return $this;
    }

    /**
     * a 标签的 target，
     * 优先于 blank 属性
     * @param string $htmlTarget
     * @return $this
     */
    public function htmlTarget(string $htmlTarget)
    {
        $this->htmlTarget = $htmlTarget;
        return $this;
    }

    /**
     * a 标签的 title
     * @param string $title
     * @return $this
     */
    public function title(string $title)
    {
        $this->title = $title;
        return $this;
    }

    /**
     * 禁用超链接
     * @param bool $disabled
     * @return $this
     */
    public function disabled(bool $disabled)
    {
        $this->disabled = $disabled;
        return $this;
    }

    /**
     * 超链接图标，以加强显示
     * @param string $icon
     * @return $this
     */
    public function icon(string $icon)
    {
        $this->icon = $icon;
        return $this;
    }

    /**
     * 右侧图标
     * @param string $rightIcon
     * @return $this
     */
    public function rightIcon(string $rightIcon)
    {
        $this->rightIcon = $rightIcon;
        return $this;
    }
}